#ifndef AST_DECLARATIONS_STRUCT_DECLARATION_LIST_H
#define AST_DECLARATIONS_STRUCT_DECLARATION_LIST_H

#include "../ASTNode.h"


class StructDeclaration;

/*
C99    6.7.2.1
struct-declaration-list:
		struct-declaration
		struct-declaration-list    struct-declaration
*/
class StructDeclarationList : public ASTNode
{
protected:
	StructDeclarationList(void)
		: ASTNode(ASTNode::struct_declaration_list){};
public:
	StructDeclarationList(StructDeclaration * pDec, StructDeclarationList *pDecList = NULL)
		: ASTNode(ASTNode::struct_declaration_list)
		, m_pDec(pDec)
		, m_pDecList(pDecList) {};

	virtual ~StructDeclarationList(void);


	virtual void				codeGen();


protected:
	StructDeclaration *				m_pDec;
	StructDeclarationList *			m_pDecList;
};


#endif


